package com.xuebusi.toutiao.admin.api.article.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.util.Date;

/**
 * 文章实体类
 */
@Data
@TableName("tb_article")
public class ArticleEntity {
    // 文章id
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    // 用户id
    @TableField("user_id")
    private Integer user_id;

    // 文章标题
    @TableField("title")
    private String title;

    // 文章内容
    @TableField("content")
    private String content;

    // 文章状态 0-草稿，1-待审核，2-审核通过，3-审核失败，4-已删除
    @TableField("status")
    private Integer status;

    // 文章发布日期
    @TableField("pubdate")
    private Date pubdate;

    // 封面类型 0 无图，1 单图，3 三图，-1 自动
    @TableField("cover_type")
    private Integer cover_type;

    // 封面图片路径，多个用逗号分隔
    @TableField("cover_images")
    private String cover_images;

    // 频道id
    @TableField("channel_id")
    private Integer channel_id;

    // 修改时间
    @TableField("update_time")
    private Date update_time;

    // 返回数据类型
    @TableField("response_type")
    private String response_type;

    // 评论状态，response_type=comment时返回
    @TableField("comment_status")
    private Boolean comment_status;

    // 总评论数，response_type=comment时返回
    @TableField("total_comment_count")
    private Integer total_comment_count;

    // 粉丝评论数，response_type=comment时返回
    @TableField("fans_comment_count")
    private Integer fans_comment_count;

    // 评论数，response_type=statistic时返回
    @TableField("comment_count")
    private Integer comment_count;

    // 阅读数，response_type=statistic时返回
    @TableField("read_count")
    private Integer read_count;

    // 点赞数，response_type=statistic时返回
    @TableField("like_count")
    private Integer like_count;

    // 转发数，response_type=statistic时返回
    @TableField("repost_count")
    private Integer repost_count;

    // 收藏数，response_type=statistic时返回
    @TableField("collect_count")
    private Integer collect_count;
}
